package org.jeecg.modules.yinsheng.command.transfer;

import org.jeecg.modules.yinsheng.annotation.Length;
import org.jeecg.modules.yinsheng.annotation.NotBlank;
import org.jeecg.modules.yinsheng.command.base.BaseBizReqCommand;

public class RefundReqCommand extends BaseBizReqCommand {
	// 必填 业务请求号
	@NotBlank(message = "业务请求号不能为空")
	@Length(max = 32, message = "业务请求号最大长度不能超过50个字符")
	private String requestNo;

	// 必填 需退款订单业务请求号
	@NotBlank(message = "需退款订单业务请求号不能为空")
	private String origRequestNo;

	// 需退款订单交易流水号
	@NotBlank(message = "需退款订单交易流水号不能为空")
	private String origTradeSn;

	// 退款金额，单位：元
	@NotBlank(message = "退款金额不能为空")
	private String amount;

	// 退款原因
	@NotBlank(message = "退款原因不能为空")
	private String reason;

	// 原订单是否分账，不传值默认为N Y-是、N-否
	@NotBlank(message = "原订单是否分账不能为空")
	private String isDivision;

	// 退款资金来源，不传值则默认从待结算账户 01-一般消费类账户 02-待结算账户
	private String refundSource;

	// 原交易类型，不传值则默认01 01-即时交易（默认值） 02-担保交易
	private String tranType;

	// 原订单交易金额，单位：元 原交易类型为担保交易时必填
	private String origAmount;

	// 分账退款明细，原订单分账时该参数必填
	private String refundSplitInfo;

	// 退款结果异步通知地址，为空则不通知
	private String notifyUrl;

	public String getRequestNo() {
		return requestNo;
	}

	public void setRequestNo(String requestNo) {
		this.requestNo = requestNo;
	}

	public String getOrigRequestNo() {
		return origRequestNo;
	}

	public void setOrigRequestNo(String origRequestNo) {
		this.origRequestNo = origRequestNo;
	}

	public String getOrigTradeSn() {
		return origTradeSn;
	}

	public void setOrigTradeSn(String origTradeSn) {
		this.origTradeSn = origTradeSn;
	}

	public String getAmount() {
		return amount;
	}

	public void setAmount(String amount) {
		this.amount = amount;
	}

	public String getReason() {
		return reason;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}

	public String getIsDivision() {
		return isDivision;
	}

	public void setIsDivision(String isDivision) {
		this.isDivision = isDivision;
	}

	public String getRefundSource() {
		return refundSource;
	}

	public void setRefundSource(String refundSource) {
		this.refundSource = refundSource;
	}

	public String getTranType() {
		return tranType;
	}

	public void setTranType(String tranType) {
		this.tranType = tranType;
	}

	public String getOrigAmount() {
		return origAmount;
	}

	public void setOrigAmount(String origAmount) {
		this.origAmount = origAmount;
	}

	public String getRefundSplitInfo() {
		return refundSplitInfo;
	}

	public void setRefundSplitInfo(String refundSplitInfo) {
		this.refundSplitInfo = refundSplitInfo;
	}

	public String getNotifyUrl() {
		return notifyUrl;
	}

	public void setNotifyUrl(String notifyUrl) {
		this.notifyUrl = notifyUrl;
	}

}
